package com.ruoyi.performance.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 潜在客户对象 potential_clients
 *
 * @author ruoyi
 * @date 2024-03-25
 */
public class PotentialClients extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 潜在客户ID
     */
    private Long id;

    /**
     * 姓名
     */
    @Excel(name = "姓名")
    private String name;

    /**
     * 年龄
     */
    @Excel(name = "年龄")
    private Long age;

    /**
     * 微信
     */
    @Excel(name = "微信")
    private String wechat;

    /**
     * QQ
     */
    @Excel(name = "QQ")
    private String qq;

    /**
     * 手机号
     */
    @Excel(name = "手机号")
    private String phoneNumber;

    /**
     * 性别
     */
    @Excel(name = "性别")
    private String gender;

    /**
     * 意向学科
     */
    @Excel(name = "意向学科")
    private String intendedSubject;

    /**
     * 意向程度
     */
    @Excel(name = "意向程度")
    private String interestLevel;

    /**
     * 录入人（教师）
     */
    @Excel(name = "录入人", readConverterExp = "教=师")
    private String inputterTeacher;

    /**
     * 咨询人员
     */
    @Excel(name = "咨询人员")
    private String consultant;

    /**
     * 录入时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "录入时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date inputTime;

    /**
     * 最后跟踪时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最后跟踪时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lastFollowUpTime;

    /**
     * 意向班级
     */
    @Excel(name = "意向班级")
    private String intendedClass;

    /**
     * 来源
     */
    @Excel(name = "来源")
    private String source;

    /**
     * 学历
     */
    @Excel(name = "学历")
    private String education;

    /**
     * 毕业大学
     */
    @Excel(name = "毕业大学")
    private String graduationFromUniversity;

    /**
     * 毕业时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "毕业时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date graduationTime;

    /**
     * 老学员推荐(0不是,1是)
     */
    @Excel(name = "老学员推荐(0不是,1是)")
    private Long reference;

    /**
     * 老学员
     */
    @Excel(name = "老学员")
    private String seniorStudents;

    /**
     * 专业
     */
    @Excel(name = "专业")
    private String speciality;

    /**
     * 工作年限
     */

    @Excel(name = "工作年限")
    private Integer yearsOfService;

    /**
     * 当前状态(0在读,1在工作,2赋闲在家)
     */
    @Excel(name = "当前状态")
    private String currentState;

    /**
     * 下次跟进时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "下次跟进时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date nextFollowUptime;

    /**
     * 跟踪次数
     */
    @Excel(name = "跟踪次数")
    private Long trackingTimes;

    /**
     * 归属校区
     */
    @Excel(name = "归属校区")
    private String belongingToCampus;

    /**
     * 最近跟踪记录
     */
    @Excel(name = "最近跟踪记录")
    private String trackRecord;

    /**
     * 未跟踪时间
     */
    @Excel(name = "未跟踪时间")
    private Long untracedTime;
    @Excel(name = "跟踪目的")
    private String followUpPurpose;
    @Excel(name = "跟踪方式")
    private String followUpMethod;
    @Excel(name = "是否联系上")
    private Integer contacte;
    @Excel(name = "备注")
    private String remarks;


    public String getFollowUpPurpose() {
        return followUpPurpose;
    }

    public void setFollowUpPurpose(String followUpPurpose) {
        this.followUpPurpose = followUpPurpose;
    }

    public String getFollowUpMethod() {
        return followUpMethod;
    }

    public void setFollowUpMethod(String followUpMethod) {
        this.followUpMethod = followUpMethod;
    }

    public Integer getContacte() {
        return contacte;
    }

    public void setContacte(Integer contacte) {
        this.contacte = contacte;
    }

    /**
     * 备注
     */


    public String getRemarks() {
        return remarks;
    }

    public void setRemarks(String remarks) {
        this.remarks = remarks;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setAge(Long age) {
        this.age = age;
    }

    public Long getAge() {
        return age;
    }

    public void setWechat(String wechat) {
        this.wechat = wechat;
    }

    public String getWechat() {
        return wechat;
    }

    public void setQq(String qq) {
        this.qq = qq;
    }

    public String getQq() {
        return qq;
    }

    public void setPhoneNumber(String phoneNumber) {
        this.phoneNumber = phoneNumber;
    }

    public String getPhoneNumber() {
        return phoneNumber;
    }

    public void setGender(String gender) {
        this.gender = gender;
    }

    public String getGender() {
        return gender;
    }

    public void setIntendedSubject(String intendedSubject) {
        this.intendedSubject = intendedSubject;
    }

    public String getIntendedSubject() {
        return intendedSubject;
    }

    public void setInterestLevel(String interestLevel) {
        this.interestLevel = interestLevel;
    }

    public String getInterestLevel() {
        return interestLevel;
    }

    public void setInputterTeacher(String inputterTeacher) {
        this.inputterTeacher = inputterTeacher;
    }

    public String getInputterTeacher() {
        return inputterTeacher;
    }

    public void setConsultant(String consultant) {
        this.consultant = consultant;
    }

    public String getConsultant() {
        return consultant;
    }

    public void setInputTime(Date inputTime) {
        this.inputTime = inputTime;
    }

    public Date getInputTime() {
        return inputTime;
    }

    public void setLastFollowUpTime(Date lastFollowUpTime) {
        this.lastFollowUpTime = lastFollowUpTime;
    }

    public Date getLastFollowUpTime() {
        return lastFollowUpTime;
    }

    public void setIntendedClass(String intendedClass) {
        this.intendedClass = intendedClass;
    }

    public String getIntendedClass() {
        return intendedClass;
    }

    public void setSource(String source) {
        this.source = source;
    }

    public String getSource() {
        return source;
    }

    public void setEducation(String education) {
        this.education = education;
    }

    public String getEducation() {
        return education;
    }

    public void setGraduationFromUniversity(String graduationFromUniversity) {
        this.graduationFromUniversity = graduationFromUniversity;
    }

    public String getGraduationFromUniversity() {
        return graduationFromUniversity;
    }

    public void setGraduationTime(Date graduationTime) {
        this.graduationTime = graduationTime;
    }

    public Date getGraduationTime() {
        return graduationTime;
    }

    public void setReference(Long reference) {
        this.reference = reference;
    }

    public Long getReference() {
        return reference;
    }

    public void setSeniorStudents(String seniorStudents) {
        this.seniorStudents = seniorStudents;
    }

    public String getSeniorStudents() {
        return seniorStudents;
    }

    public void setSpeciality(String speciality) {
        this.speciality = speciality;
    }

    public String getSpeciality() {
        return speciality;
    }

    public void setYearsOfService(Integer yearsOfService) {
        this.yearsOfService = yearsOfService;
    }

    public Integer getYearsOfService() {
        return yearsOfService;
    }

    public void setCurrentState(String currentState) {
        this.currentState = currentState;
    }

    public String getCurrentState() {
        return currentState;
    }

    public void setNextFollowUptime(Date nextFollowUptime) {
        this.nextFollowUptime = nextFollowUptime;
    }

    public Date getNextFollowUptime() {
        return nextFollowUptime;
    }

    public void setTrackingTimes(Long trackingTimes) {
        this.trackingTimes = trackingTimes;
    }

    public Long getTrackingTimes() {
        return trackingTimes;
    }

    public void setBelongingToCampus(String belongingToCampus) {
        this.belongingToCampus = belongingToCampus;
    }

    public String getBelongingToCampus() {
        return belongingToCampus;
    }

    public void setTrackRecord(String trackRecord) {
        this.trackRecord = trackRecord;
    }

    public String getTrackRecord() {
        return trackRecord;
    }

    public void setUntracedTime(Long untracedTime) {
        this.untracedTime = untracedTime;
    }

    public Long getUntracedTime() {
        return untracedTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("name", getName())
                .append("age", getAge())
                .append("wechat", getWechat())
                .append("qq", getQq())
                .append("phoneNumber", getPhoneNumber())
                .append("gender", getGender())
                .append("intendedSubject", getIntendedSubject())
                .append("interestLevel", getInterestLevel())
                .append("inputterTeacher", getInputterTeacher())
                .append("consultant", getConsultant())
                .append("inputTime", getInputTime())
                .append("lastFollowUpTime", getLastFollowUpTime())
                .append("intendedClass", getIntendedClass())
                .append("source", getSource())
                .append("education", getEducation())
                .append("graduationFromUniversity", getGraduationFromUniversity())
                .append("graduationTime", getGraduationTime())
                .append("reference", getReference())
                .append("seniorStudents", getSeniorStudents())
                .append("speciality", getSpeciality())
                .append("yearsOfService", getYearsOfService())
                .append("currentState", getCurrentState())
                .append("nextFollowUptime", getNextFollowUptime())
                .append("trackingTimes", getTrackingTimes())
                .append("belongingToCampus", getBelongingToCampus())
                .append("trackRecord", getTrackRecord())
                .append("untracedTime", getUntracedTime())
                .append("remarks", getRemarks())
                .append("followUpPurpose",getFollowUpPurpose())
                .append("followUpMethod",getFollowUpMethod())
                .append("contacte",getContacte())
                .toString();
    }
}
